package com.acme.bankapp.domain.bank;

import java.io.Serializable;

import com.acme.bankapp.exceptions.NotEnoughFundsException;

/**
 * This interface declares some account's functionality
 * 
 * @author Anton Kotov
 * 
 */
public interface Account extends Serializable {

    void deposit(final double amount);

    void withdraw(final double amount) throws NotEnoughFundsException;

    double getBalance();

    double maximumAmountToWithdraw();

    long decimalValue();
}
